Skip to content

fix(darwin): publish sherpa-onnx and speaker-recognition images for darwin/arm64 - #10275

Merged
mudler merged 1 commit into
masterfrom
fix/darwin-sherpa-speaker-images
Jun 12, 2026
Merged

fix(darwin): publish sherpa-onnx and speaker-recognition images for darwin/arm64#10275
mudler merged 1 commit into
masterfrom
fix/darwin-sherpa-speaker-images

Conversation

@localai-bot

Copy link
Copy Markdown
Collaborator

What

Fixes #10268.

Neither the sherpa-onnx nor the speaker-recognition backend had a darwin/arm64 image, so local-ai backends install failed on macOS with:

no child with platform darwin/arm64 in index quay.io/go-skynet/local-ai-backends:latest-cpu-sherpa-onnx

This left /v1/audio/diarization (the sherpa-onnx path) and /v1/voice/embed without any usable backend on Apple Silicon.

Change

Both backends build on darwin/arm64:

  • sherpa-onnx (Go): its Makefile already fetches the onnxruntime-osx-arm64 runtime, so it only needed a darwin matrix entry (build-type: metal, lang: go, like whisper / silero-vad).
  • speaker-recognition (Python): needed a requirements-mps.txt so the mps build installs plain onnxruntime (which ships a macOS arm64 wheel) instead of the onnxruntime-gpu pulled by its base requirements (which does not).

Specifically:

  • .github/backend-matrix.yml: add both to includeDarwin.
  • backend/index.yaml: add the metal: capability + metal-* image aliases (and -development variants) for both, mirroring metal-whisper.
  • backend/python/speaker-recognition/requirements-mps.txt: new file.

Verification

YAML parses for both files; core/gallery tests pass. This is CI/build config — the real proof is a green darwin CI run, which I can't reproduce locally. sherpa-onnx is essentially pure CI wiring (native build already darwin-ready); speaker-recognition's only code artifact is the new requirements file.

Assisted-by: Claude:claude-opus-4-8 [Claude Code]

…arwin/arm64

Neither the sherpa-onnx nor the speaker-recognition backend had a
darwin/arm64 image, so `local-ai backends install` failed with "no child
with platform darwin/arm64" on macOS. This left /v1/audio/diarization (the
sherpa-onnx path) and /v1/voice/embed without any usable backend on Apple
Silicon.

Both backends build on darwin/arm64:
- sherpa-onnx (Go) already fetches the onnxruntime osx-arm64 runtime in its
  Makefile; it only needed a darwin matrix entry (build-type metal, lang go,
  like whisper and silero-vad).
- speaker-recognition (Python) needed a requirements-mps.txt so the mps build
  installs plain onnxruntime (which ships a macOS arm64 wheel) instead of the
  onnxruntime-gpu pulled by its base requirements (which does not).

Add both to the includeDarwin build matrix, wire the metal capability and
metal image aliases into the gallery, and add the speaker-recognition
requirements-mps.txt.

Fixes #10268

Signed-off-by: Ettore Di Giacinto <mudler@localai.io>
Assisted-by: Claude:claude-opus-4-8 [Claude Code]
@mudler
mudler merged commit 60facc7 into master Jun 12, 2026
60 of 61 checks passed
@mudler
mudler deleted the fix/darwin-sherpa-speaker-images branch June 12, 2026 20:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

No darwin/arm64 images for sherpa-onnx and speaker-recognition backends — diarization and /v1/voice/embed unavailable on macOS

2 participants